package com.jt.www.admin.stats.service.impl;

import com.jt.www.admin.stats.service.SchoolDutyService;
import com.jt.www.enums.ResultEnum;
import com.jt.www.model.reps.ResultDTO;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author admin_ltf
 * @create 2019-05-16 17:18
 */
@Service
public class SchoolDutyServiceImpl implements SchoolDutyService {

    @Override
    public ResultDTO searchAccidentTypeInfo() {


        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();
        listX.add("交通事故");
        listX.add("突发疾病（含猝死）");
        listX.add("溺水");
        listX.add("坠楼");
        listX.add("意外");
        listX.add("自杀");
        listX.add("煤气中毒");
        map.put("item", listX);

        List<Double> listy1 = new ArrayList<>();
        listy1.add(17.80);
        listy1.add(48.90);
        listy1.add(11.10);
        listy1.add(13.30);
        listy1.add(2.20);
        listy1.add(4.40);
        listy1.add(2.20);
        map.put("value", listy1);

        List<Integer> listy2 = new ArrayList<>();

        listy2.add(8);
        listy2.add(22);
        listy2.add(5);
        listy2.add(6);
        listy2.add(1);
        listy2.add(2);
        listy2.add(1);
        map.put("sum", listy2);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }


    @Override
    public ResultDTO searchAccidentCondition() {

        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();
        listX.add("幼儿园");
        listX.add("小学");
        listX.add("中学");
        listX.add("高中");
        listX.add("中职");
        map.put("item", listX);
        List<Double> listy1 = new ArrayList<>();

        listy1.add(6.7);
        listy1.add(35.6);
        listy1.add(51.1);
        listy1.add(4.4);
        listy1.add(2.2);
        map.put("value", listy1);

        List<Integer> listy2 = new ArrayList<>();
        listy2.add(3);
        listy2.add(16);
        listy2.add(23);
        listy2.add(2);
        listy2.add(1);
        map.put("sum", listy2);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }

    @Override
    public ResultDTO searchCasualtyType(String startDate, String endDate) {

        //参数未使用

        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();

        listX.add("触电");
        listX.add("打架斗殴");
        listX.add("动物抓咬");
        listX.add("动物抓咬蜇伤");
        listX.add("高空坠物");
        listX.add("集体活动事故");
        listX.add("磕碰、划夹伤等意外");
        listX.add("溺水");
        listX.add("其他");
        listX.add("食物中毒");
        listX.add("摔伤、跌倒、扭伤等意外");
        listX.add("摔伤碰伤划伤");
        listX.add("烫伤");
        listX.add("体育活动伤害");
        listX.add("突发疾病（含猝死）");
        listX.add("吞食小物件");
        listX.add("误食误吞误吸");
        listX.add("校园暴力");
        listX.add("校园暴力和欺凌");
        listX.add("校园设施事故");
        listX.add("拥挤踩踏");
        listX.add("抓挠咬等伤害");
        listX.add("追逐打闹事故");
        listX.add("自杀自残");
        listX.add("(空白)");
        listX.add("总计");
        map.put("item", listX);

        List<Integer> listy1 = new ArrayList<>();
        listy1.add(1);
        listy1.add(1);
        listy1.add(2);
        listy1.add(14);
        listy1.add(3);

        listy1.add(24);
        listy1.add(12);
        listy1.add(920);
        listy1.add(1);
        listy1.add(40);

        listy1.add(1);
        listy1.add(1920);
        listy1.add(290);
        listy1.add(19);
        listy1.add(194);

        listy1.add(72);
        listy1.add(12);
        listy1.add(2);
        listy1.add(6);
        listy1.add(2);


        listy1.add(34);
        listy1.add(10);
        listy1.add(4);
        listy1.add(7);
        listy1.add(21);

        listy1.add(4);
        listy1.add(883);
        listy1.add(4498);
        map.put("value", listy1);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }

    @Override
    public ResultDTO searchCasualtyCondition(String startDate, String endDate) {

        //参数未使用

        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();

        listX.add("高职");
        listX.add("普通高校");
        listX.add("其他");
        listX.add("小学");
        listX.add("幼儿园");
        listX.add("中学");
        listX.add("中职");
        listX.add("(空白)");
        listX.add("总计");
        map.put("item", listX);

        List<Integer> listy1 = new ArrayList<>();

        listy1.add(7);
        listy1.add(7);
        listy1.add(7);
        listy1.add(2117);
        listy1.add(692);

        listy1.add(1160);
        listy1.add(101);
        listy1.add(413);
        listy1.add(4498);

        map.put("value", listy1);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }


    @Override
    public ResultDTO searchCasualtyTypeCondition(String startDate, String endDate) {

        //参数未使用

        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();

        listX.add("残疾");
        listX.add("疾病");
        listX.add("其他");
        listX.add("受伤");
        listX.add("死亡");
        listX.add("(空白)");
        listX.add("总计");
        map.put("item", listX);

        List<Integer> listy1 = new ArrayList<>();

        listy1.add(1);
        listy1.add(4);
        listy1.add(9);
        listy1.add(4059);
        listy1.add(45);

        listy1.add(387);
        listy1.add(4498);

        map.put("value", listy1);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }


    @Override
    public ResultDTO searchCasualtyReason(String startDate, String endDate) {

        //参数未使用

        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();


        listX.add("不详");
        listX.add("个人意外");
        listX.add("环境不佳（光线昏暗、地面湿滑等）");
        listX.add("其他");
        listX.add("人为伤害（校园暴力、打闹等）");
        listX.add("设施故障或设置不当");
        listX.add("(空白)");
        listX.add("总计");
        map.put("item", listX);

        List<Integer> listy1 = new ArrayList<>();

        listy1.add(1);
        listy1.add(2853);
        listy1.add(46);
        listy1.add(70);
        listy1.add(206);
        listy1.add(27);
        listy1.add(1295);
        listy1.add(4498);

        map.put("value", listy1);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }


    @Override
    public ResultDTO searchCasualtyLocation(String startDate, String endDate) {

        //参数未使用

        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();
        listX.add("校外");
        listX.add("校园周边和校门口");
        listX.add("教室");
        listX.add("楼梯和走廊");
        listX.add("卫生间");
        listX.add("宿舍");
        listX.add("食堂");
        listX.add("实验室");
        listX.add("操场");
        listX.add("校园内");
        listX.add("其他");
        map.put("item", listX);

        List<Integer> listy1 = new ArrayList<>();

        listy1.add(47);
        listy1.add(15);
        listy1.add(611);
        listy1.add(792);
        listy1.add(272);
        listy1.add(214);
        listy1.add(34);
        listy1.add(12);
        listy1.add(2351);
        listy1.add(120);
        listy1.add(20);

        map.put("value", listy1);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }


    @Override
    public ResultDTO searchCasualtyDuration(String startDate, String endDate) {

        //参数未使用

        // 接收到接口数据之后  再次封装成几个list  放入map  返回给前端
        Map<String, Object> map = new HashMap<>();

        List<String> listX = new ArrayList<>();
        listX.add("教室内上课期间");
        listX.add("教学教室");
        listX.add("户外活动");
        listX.add("活动场地");
        listX.add("常规教学");
        listX.add("自由活动（课间、课外活动）");
        listX.add("集体活动（文艺表演、排练、集会等）");
        listX.add("体育课/运动会（含军训）");
        listX.add("校外活动");
        listX.add("实验课");
        listX.add("就寝期间");
        listX.add("自习课时间");
        listX.add("上下学时段");
        listX.add("用餐期间");
        listX.add("校内实训");
        listX.add("其他");
        listX.add("不详");
        map.put("item", listX);

        List<Integer> listy1 = new ArrayList<>();

        listy1.add(11);
        listy1.add(43);
        listy1.add(27);
        listy1.add(333);
        listy1.add(108);
        listy1.add(2484);

        listy1.add(404);
        listy1.add(624);
        listy1.add(6);
        listy1.add(4);
        listy1.add(85);

        listy1.add(12);
        listy1.add(97);
        listy1.add(41);
        listy1.add(3);
        listy1.add(65);

        map.put("value", listy1);

        return new ResultDTO(ResultEnum.SUCCESS, map);
    }
}
